Verifying Fortran Programs with CIVL
نویسندگان
چکیده
Abstract Fortran is widely used in computational science, engineering, and high performance computing. This paper presents an extension to the CIVL verification framework check correctness properties of programs. Unlike previous work that translates C, LLVM IR, or other intermediate formats before verification, our allows directly consume source files. We extended parsing, translation, analysis phases support Fortran-specific features such as array slicing reshaping, find program violations are specific Fortran, argument aliasing rule violations, invalid use variable function attributes, defects due Fortran’s unspecified expression evaluation order. demonstrate usefulness tool on a benchmark suite kernels extracted from real world application.
منابع مشابه
Verifying Eiffel Programs with Boogie
Static program verifiers such as Spec#, Dafny, jStar, and VeriFast define the state of the art in automated functional verification techniques. The next open challenges are to make verification tools usable even by programmers not fluent in formal techniques. This paper presents AutoProof, a verification tool that translates Eiffel programs to Boogie and uses the Boogie verifier to prove them. ...
متن کاملVerifying Programs with Unreliable Channels
We consider the verification of a particular class of infinite-state systems, namely systems consisting of finite-state processes that communicate via unbounded lossy FIFO channels. This class is able to model, e.g., link protocols such as the Alternating Bit Protocol and HDLC. For this class of systems, we show that several interesting verification problems are decidable by giving algorithms f...
متن کاملParallel Fortran Programs
Data parallel programming stands for single threaded, global name space, and loosely synchronous parallel computation. This kind of parallel programming has been proven to be very user-friendly, easy to debug and easy to use. But this programming model is not available for most message passing multiprocessor architectures. Adaptor (Automatic Data Parallelism Translator) is a compilation system ...
متن کاملRestructuring Fortran Programs for Cedar
This paper reports on the status of the Fortran translator for the Cedar computer at the end of March, 1991. A brief description of the Cedar Fortran language is followed by a discussion of the fortran77 to Cedar Fortran parallelizer that describes the techniques currently being implemented. A collection of experiments illustrate the e ectiveness of the current implementation, and point toward ...
متن کاملVerifying Multi-threaded C Programs with SPIN
A key challenge in model checking software is the difficulty of verifying properties of implementation code, as opposed to checking an abstract algorithmic description. We describe a tool for verifying multithreaded C programs that uses the SPIN model checker. Our tool works by compiling a multi-threaded C program into a typed bytecode format, and then using a virtual machine that interprets th...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Lecture Notes in Computer Science
سال: 2022
ISSN: ['1611-3349', '0302-9743']
DOI: https://doi.org/10.1007/978-3-030-99524-9_6